<html>
<head><meta charset="utf-8"><title>forward compatibility warning for forbid lints and groups · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html">forward compatibility warning for forbid lints and groups</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="224394936"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224394936" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224394936">(Jan 28 2021 at 21:26)</a>:</h4>
<p>Hey <span class="user-mention" data-user-id="116083">@pnkfelix</span> -- did you want me to prepare that forward compatibility warning PR?</p>



<a name="224400495"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224400495" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224400495">(Jan 28 2021 at 22:09)</a>:</h4>
<p>Hi <span class="user-mention" data-user-id="116009">@nikomatsakis</span> . Yeah I haven't gotten around to that yet.</p>



<a name="224405313"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224405313" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224405313">(Jan 28 2021 at 22:45)</a>:</h4>
<p>I need to do dinner+childcare now, I'm guessing I need to come back and do more work tonight at this rate, given what's still on my plate.</p>



<a name="224405414"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224405414" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224405414">(Jan 28 2021 at 22:46)</a>:</h4>
<p>If you can look into this thing with forbid lints and groups, that would be great. At this point though I do think a revert for this beta cycle seems entirely reasonable</p>



<a name="224405462"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224405462" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224405462">(Jan 28 2021 at 22:47)</a>:</h4>
<p>(we clearly just didn't anticipate the fallout from this when we made the original plan, IMO)</p>



<a name="224405578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224405578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224405578">(Jan 28 2021 at 22:48)</a>:</h4>
<p>(a revert of the handling of the handlilng of groups, that is, to go back to the old broken failure to apply the lint to the group members as well)</p>



<a name="224406198"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224406198" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224406198">(Jan 28 2021 at 22:54)</a>:</h4>
<p>lint groups revert should be a 1-line change essentially I think</p>



<a name="224406272"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224406272" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224406272">(Jan 28 2021 at 22:55)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/blob/master/compiler/rustc_lint/src/levels.rs#L121">https://github.com/rust-lang/rust/blob/master/compiler/rustc_lint/src/levels.rs#L121</a> needs to change to something like specs.get(..., ...)</p>



<a name="224409738"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224409738" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224409738">(Jan 28 2021 at 23:32)</a>:</h4>
<p>hmm, ok</p>



<a name="224409766"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224409766" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224409766">(Jan 28 2021 at 23:33)</a>:</h4>
<p>I hadn't considered that kind of 'targeted revert' as a possibility</p>



<a name="224409924"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224409924" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224409924">(Jan 28 2021 at 23:34)</a>:</h4>
<p>we can try a fuller revert, but then we'd need to re-apply the fix to the previous regresssion</p>



<a name="224409944"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224409944" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224409944">(Jan 28 2021 at 23:34)</a>:</h4>
<p>which likely needs rebasing... it seems like a pain</p>



<a name="224409977"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224409977" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224409977">(Jan 28 2021 at 23:35)</a>:</h4>
<p>I think we're just worried about the group impact, right? I didn't see detailed notes on the lang team decision or new rationale</p>



<a name="224410165"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410165" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410165">(Jan 28 2021 at 23:37)</a>:</h4>
<p>I don't want to do a full revert, exactly</p>



<a name="224410175"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410175" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410175">(Jan 28 2021 at 23:37)</a>:</h4>
<p>and yes, the specific concern is around group impact</p>



<a name="224410321"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410321" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410321">(Jan 28 2021 at 23:38)</a>:</h4>
<p>the <a href="https://github.com/rust-lang/lang-team/blob/master/minutes/2021-01-26.md#p-high-issues-on-rust-langrust">meeting minutes</a> have rough notes, but it comes down to "this is impacting folks, so even if it is right, we should phase it in"</p>



<a name="224410347"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410347" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410347">(Jan 28 2021 at 23:39)</a>:</h4>
<p>and that we didn't want to go down the whole path of making some things not fire when in macros etc 'under the gun'</p>



<a name="224410660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410660">(Jan 28 2021 at 23:43)</a>:</h4>
<p>Yeah that makes sense, I was thinking we would potentially take a harder line given breakage is entirely crate local and likely just affects people doing forbid of big groups like warnings which should be really rare.</p>



<a name="224410678"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410678" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410678">(Jan 28 2021 at 23:43)</a>:</h4>
<p>I don't 100% understand the code here but, <span class="user-mention" data-user-id="116122">@simulacrum</span>, from your comment, I gather that the call to <code>get_lint_level</code> manages the case where the lint is in a group</p>



<a name="224410687"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410687" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410687">(Jan 28 2021 at 23:44)</a>:</h4>
<p>and <code>specs</code> is precisely the set of things that were set by the user?</p>



<a name="224410735"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410735" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410735">(Jan 28 2021 at 23:44)</a>:</h4>
<p>It takes care of looking up in all parent groups yes, as well as e.g. CLI args and such</p>



<a name="224410757"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410757" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410757">(Jan 28 2021 at 23:44)</a>:</h4>
<p>specs is the current list of things set at higher levels</p>



<a name="224410780"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410780" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410780">(Jan 28 2021 at 23:44)</a>:</h4>
<p>so if we change to <code>specs</code> here, would that .. ah, maybe not relevant. I was going to ask if it would overlook conflicts with CLI args</p>



<a name="224410823"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410823" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410823">(Jan 28 2021 at 23:45)</a>:</h4>
<p>It would, I think, if the CLI arg was a lint group or similar</p>



<a name="224410834"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410834" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410834">(Jan 28 2021 at 23:45)</a>:</h4>
<p>But it's what we did before</p>



<a name="224410851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410851">(Jan 28 2021 at 23:45)</a>:</h4>
<p>it seems pretty easy to make this a FCW</p>



<a name="224410920"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410920" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410920">(Jan 28 2021 at 23:46)</a>:</h4>
<p>I've not added one before but yes</p>



<a name="224410943"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224410943" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224410943">(Jan 28 2021 at 23:46)</a>:</h4>
<p>I'm reviewing the plan we had</p>



<a name="224411120"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411120" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411120">(Jan 28 2021 at 23:48)</a>:</h4>
<p>I believe what we were thinking was that <code>forbid(warnings)</code> would be treated as if it were <code>deny</code></p>



<a name="224411139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411139">(Jan 28 2021 at 23:48)</a>:</h4>
<p>but I realize now that issuing a warning in that case is a bit weird because</p>



<a name="224411166"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411166" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411166">(Jan 28 2021 at 23:49)</a>:</h4>
<p>we don't <em>know</em> that an error would result if it were forbid</p>



<a name="224411198"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411198" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411198">(Jan 28 2021 at 23:49)</a>:</h4>
<p>it seems like the FCW should come at the point where the "previously ignored" forbid creates an error</p>



<a name="224411207"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411207" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411207">(Jan 28 2021 at 23:49)</a>:</h4>
<p>Right</p>



<a name="224411216"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411216" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411216">(Jan 28 2021 at 23:49)</a>:</h4>
<p>so the code for <code>get_lint_level</code> is a bit confusing to me</p>



<a name="224411265"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411265" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411265">(Jan 28 2021 at 23:50)</a>:</h4>
<p>Which should be a matter of checking specs va get_lint_level and seeing if results are different</p>



<a name="224411267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411267">(Jan 28 2021 at 23:50)</a>:</h4>
<p>or rather <code>get_lint_id_level</code></p>



<a name="224411270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411270">(Jan 28 2021 at 23:50)</a>:</h4>
<p>If yes, FCW</p>



<a name="224411279"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411279" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411279">(Jan 28 2021 at 23:50)</a>:</h4>
<p>ah, hmm, yeah, ok</p>



<a name="224411280"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411280" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411280">(Jan 28 2021 at 23:50)</a>:</h4>
<p>that works :)</p>



<a name="224411283"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411283" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411283">(Jan 28 2021 at 23:50)</a>:</h4>
<p>I hadn't thought of that</p>



<a name="224411300"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411300" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411300">(Jan 28 2021 at 23:50)</a>:</h4>
<p>I can probably explain code too</p>



<a name="224411332"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411332" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411332">(Jan 28 2021 at 23:51)</a>:</h4>
<p>the thing that confused me specifically</p>



<a name="224411348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411348">(Jan 28 2021 at 23:51)</a>:</h4>
<p><code>get_lint_id_level</code> first checks for specs:</p>



<a name="224411350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411350">(Jan 28 2021 at 23:51)</a>:</h4>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="w">        </span><span class="k">if</span><span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nb">Some</span><span class="p">(</span><span class="n">specs</span><span class="p">)</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">aux</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">            </span><span class="k">if</span><span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nb">Some</span><span class="p">(</span><span class="o">&amp;</span><span class="p">(</span><span class="n">level</span><span class="p">,</span><span class="w"> </span><span class="n">src</span><span class="p">))</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">specs</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="o">&amp;</span><span class="n">id</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">                </span><span class="k">return</span><span class="w"> </span><span class="p">(</span><span class="nb">Some</span><span class="p">(</span><span class="n">level</span><span class="p">),</span><span class="w"> </span><span class="n">src</span><span class="p">);</span><span class="w"></span>
<span class="w">            </span><span class="p">}</span><span class="w"></span>
<span class="w">        </span><span class="p">}</span><span class="w"></span>
</code></pre></div>



<a name="224411355"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411355" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411355">(Jan 28 2021 at 23:51)</a>:</h4>
<p>that seems clear enough</p>



<a name="224411372"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411372" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411372">(Jan 28 2021 at 23:51)</a>:</h4>
<p>but then it looks something up in <code>self.list</code></p>



<a name="224411435"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411435" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411435">(Jan 28 2021 at 23:52)</a>:</h4>
<p>I guess I just don't quite know what <code>self.list</code> is</p>



<a name="224411437"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411437" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411437">(Jan 28 2021 at 23:52)</a>:</h4>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="w">                </span><span class="n">LintSet</span>::<span class="n">Node</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="k">ref</span><span class="w"> </span><span class="n">specs</span><span class="p">,</span><span class="w"> </span><span class="n">parent</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">                    </span><span class="k">if</span><span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nb">Some</span><span class="p">(</span><span class="o">&amp;</span><span class="p">(</span><span class="n">level</span><span class="p">,</span><span class="w"> </span><span class="n">src</span><span class="p">))</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">specs</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="o">&amp;</span><span class="n">id</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">                        </span><span class="k">return</span><span class="w"> </span><span class="p">(</span><span class="nb">Some</span><span class="p">(</span><span class="n">level</span><span class="p">),</span><span class="w"> </span><span class="n">src</span><span class="p">);</span><span class="w"></span>
<span class="w">                    </span><span class="p">}</span><span class="w"></span>
</code></pre></div>



<a name="224411440"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411440" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411440">(Jan 28 2021 at 23:52)</a>:</h4>
<p>I couldn't quite tell what <code>specs</code> was meant to be</p>



<a name="224411480"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411480" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411480">(Jan 28 2021 at 23:53)</a>:</h4>
<p>that said, I like your preferred approach :)</p>



<a name="224411500"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411500" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411500">(Jan 28 2021 at 23:53)</a>:</h4>
<p>Do you have a link handy?</p>



<a name="224411590"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411590" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411590">(Jan 28 2021 at 23:54)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/blob/c0b64d97beebb09325b5587abed39f4f1621026f/compiler/rustc_middle/src/lint.rs#L114-L142">get_lint_id_level</a></p>



<a name="224411685"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411685" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411685">(Jan 28 2021 at 23:55)</a>:</h4>
<p>Ah</p>



<a name="224411689"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411689" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411689">(Jan 28 2021 at 23:55)</a>:</h4>
<p>Yeah I remember noe</p>



<a name="224411741"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411741" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411741">(Jan 28 2021 at 23:56)</a>:</h4>
<p>That's so we can revert the change latter</p>



<a name="224411754"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411754" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411754">(Jan 28 2021 at 23:56)</a>:</h4>
<p>list is basically the stack we push onto iirc as we go down the HIR</p>



<a name="224411878"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224411878" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224411878">(Jan 28 2021 at 23:58)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> but I think my strategy of just comparing two gets should be fine</p>



<a name="224412267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224412267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224412267">(Jan 29 2021 at 00:02)</a>:</h4>
<p>I've implemented it</p>



<a name="224412270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224412270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224412270">(Jan 29 2021 at 00:02)</a>:</h4>
<p>I'm testing to see if it works</p>



<a name="224412306"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224412306" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224412306">(Jan 29 2021 at 00:03)</a>:</h4>
<p>(I didn't implement the full FCW thing, but I added the check and made it alter the error message, so i can see if it's doing what I want)</p>



<a name="224412315"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224412315" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224412315">(Jan 29 2021 at 00:03)</a>:</h4>
<p>I am reminded that I have to figure out why my "vscode on rustc" setup no longer seems to work like it used to</p>



<a name="224412319"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224412319" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224412319">(Jan 29 2021 at 00:03)</a>:</h4>
<p>but <em>that's</em> for another topic</p>



<a name="224415911"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224415911" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224415911">(Jan 29 2021 at 00:27)</a>:</h4>
<p>seems to work</p>



<a name="224416065"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224416065" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224416065">(Jan 29 2021 at 00:29)</a>:</h4>
<p>Great! I imagine we'll want to check it backports to beta cleanly but I expect it should</p>



<a name="224476323"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224476323" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224476323">(Jan 29 2021 at 14:21)</a>:</h4>
<div class="codehilite"><pre><span></span><code>warning: deny(bad_style) incompatible with previous forbid
 --&gt; src/test/ui/lint/issue-80988.rs:2:9
  |
1 | #![forbid(warnings)]
  |           -------- `forbid` level set here
2 | #![deny(bad_style)]
  |         ^^^^^^^^^ overruled by previous forbid
  |
  = note: `#[warn(forbidden_lint_groups)]` on by default
  = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
  = note: for more information, see issue #57571 &lt;https://github.com/rust-lang/rust/issues/57571&gt;
</code></pre></div>



<a name="224476332"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224476332" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224476332">(Jan 29 2021 at 14:21)</a>:</h4>
<p>(current status)</p>



<a name="224476483"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224476483" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224476483">(Jan 29 2021 at 14:22)</a>:</h4>
<p>except for some reason I get two warnings</p>



<a name="224478054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224478054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224478054">(Jan 29 2021 at 14:33)</a>:</h4>
<p>I think I know why -- I think that the first one has the "note, on by default" thing, and the second does not, and hence they are not regarded as duplicates</p>



<a name="224481583"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224481583" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224481583">(Jan 29 2021 at 14:59)</a>:</h4>
<p>I wouldn't worry about two warnings</p>



<a name="224494978"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224494978" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224494978">(Jan 29 2021 at 16:16)</a>:</h4>
<p>so</p>



<a name="224495004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495004">(Jan 29 2021 at 16:16)</a>:</h4>
<p>i'm not overly worried about that but I am confused about something</p>



<a name="224495032"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495032" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495032">(Jan 29 2021 at 16:16)</a>:</h4>
<div class="codehilite"><pre><span></span><code>athena. rustc +rust-4-stage1 src/test/ui/error-codes/E0453.rs
warning: allow(non_snake_case) incompatible with previous forbid
 --&gt; src/test/ui/error-codes/E0453.rs:3:9
  |
1 | #![forbid(non_snake_case)]
  |           -------------- `forbid` level set here
2 |
3 | #[allow(non_snake_case)]
  |         ^^^^^^^^^^^^^^ overruled by previous forbid
  |
  = note: `#[warn(forbidden_lint_groups)]` on by default
  = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
  = note: for more information, see issue #57571 &lt;https://github.com/rust-lang/rust/issues/57571&gt;

warning: allow(non_snake_case) incompatible with previous forbid
 --&gt; src/test/ui/error-codes/E0453.rs:3:9
  |
1 | #![forbid(non_snake_case)]
  |           -------------- `forbid` level set here
2 |
3 | #[allow(non_snake_case)]
  |         ^^^^^^^^^^^^^^ overruled by previous forbid
  |
  = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
  = note: for more information, see issue #57571 &lt;https://github.com/rust-lang/rust/issues/57571&gt;

warning: 2 warnings emitted
</code></pre></div>



<a name="224495049"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495049" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495049">(Jan 29 2021 at 16:16)</a>:</h4>
<p>this test gives a hard error on stable</p>



<a name="224495067"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495067" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495067">(Jan 29 2021 at 16:17)</a>:</h4>
<p>so the FCW is wrong</p>



<a name="224495124"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495124" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495124">(Jan 29 2021 at 16:17)</a>:</h4>
<p>however, it seems like the code is correct... that is, <code>non_snake_case</code> is not present in <code>specs</code></p>



<a name="224495423"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495423" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495423">(Jan 29 2021 at 16:18)</a>:</h4>
<p>hm</p>



<a name="224495440"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495440" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495440">(Jan 29 2021 at 16:18)</a>:</h4>
<p>are those on the same level?</p>



<a name="224495494"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495494" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495494">(Jan 29 2021 at 16:19)</a>:</h4>
<p>we <em>also</em> fixed the bug in 1.50 that forbid/allow right after each other used to not error, but now do</p>



<a name="224495504"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495504" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495504">(Jan 29 2021 at 16:19)</a>:</h4>
<p>that's independent of lint groups</p>



<a name="224495523"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224495523" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224495523">(Jan 29 2021 at 16:19)</a>:</h4>
<p>we can phase that in as well or we can make that part of the story a hard error</p>



<a name="224496304"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496304" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496304">(Jan 29 2021 at 16:24)</a>:</h4>
<p>they are not on the same level</p>



<a name="224496331"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496331" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496331">(Jan 29 2021 at 16:24)</a>:</h4>
<p>is the <code>specs</code> list only things on the same level?</p>



<a name="224496377"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496377" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496377">(Jan 29 2021 at 16:25)</a>:</h4>
<p>hm</p>



<a name="224496400"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496400" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496400">(Jan 29 2021 at 16:25)</a>:</h4>
<p>specs should be everything I would think</p>



<a name="224496411"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496411" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496411">(Jan 29 2021 at 16:25)</a>:</h4>
<p>can I just check if the "previous source" is a forbid of a lint group</p>



<a name="224496424"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496424" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496424">(Jan 29 2021 at 16:25)</a>:</h4>
<p>possibly</p>



<a name="224496464"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496464" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496464">(Jan 29 2021 at 16:25)</a>:</h4>
<p>I am a bit worried though, because it seems like we'd still have the bug on lint groups in this case</p>



<a name="224496491"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496491" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496491">(Jan 29 2021 at 16:26)</a>:</h4>
<p>i.e., that the FCW is falsely emitted</p>



<a name="224496551"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224496551" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224496551">(Jan 29 2021 at 16:26)</a>:</h4>
<p>it may be that I did not quite have the right picture of what changed between old and new versions</p>



<a name="224497005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497005">(Jan 29 2021 at 16:29)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups/near/224496464">said</a>:</p>
<blockquote>
<p>I am a bit worried though, because it seems like we'd still have the bug on lint groups in this case</p>
</blockquote>
<p>I don't understand what you mean by this</p>



<a name="224497038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497038">(Jan 29 2021 at 16:29)</a>:</h4>
<p>which bug?</p>



<a name="224497264"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497264" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497264">(Jan 29 2021 at 16:30)</a>:</h4>
<p>hm</p>



<a name="224497346"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497346" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497346">(Jan 29 2021 at 16:31)</a>:</h4>
<p><code>specs</code> does seem to be things on the same level</p>



<a name="224497455"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497455" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497455">(Jan 29 2021 at 16:31)</a>:</h4>
<p>I would not expect the FCW to fire in your example of different levels w/o lint groups being involved</p>



<a name="224497501"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497501" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497501">(Jan 29 2021 at 16:32)</a>:</h4>
<p>Agreed; I think the thing to test for is</p>



<a name="224497545"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497545" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497545">(Jan 29 2021 at 16:32)</a>:</h4>
<p>but not because of lint groups, but rather just because it was previously already a hard error</p>



<a name="224497577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497577">(Jan 29 2021 at 16:32)</a>:</h4>
<p>i.e., our condition is already wrong somehow</p>



<a name="224497580"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497580" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497580">(Jan 29 2021 at 16:32)</a>:</h4>
<ul>
<li>is the forbidden thing different from the thing triggering the error</li>
</ul>



<a name="224497594"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497594" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497594">(Jan 29 2021 at 16:32)</a>:</h4>
<p>which implies it must be a lint group</p>



<a name="224497636"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497636" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497636">(Jan 29 2021 at 16:32)</a>:</h4>
<p>I presume that <code>#![forbid(warnings)] #[allow(warnings]]</code> was previously an error too</p>



<a name="224497646"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497646" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497646">(Jan 29 2021 at 16:32)</a>:</h4>
<p>we just failed to consider groups</p>



<a name="224497659"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497659" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497659">(Jan 29 2021 at 16:32)</a>:</h4>
<p>(I can test that)</p>



<a name="224497679"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497679" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497679">(Jan 29 2021 at 16:32)</a>:</h4>
<p>I believe that's true</p>



<a name="224497737"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497737" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497737">(Jan 29 2021 at 16:33)</a>:</h4>
<p>ok, I can confirm that</p>



<a name="224497807"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497807" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497807">(Jan 29 2021 at 16:33)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups/near/224497580">said</a>:</p>
<blockquote>
<ul>
<li>is the forbidden thing different from the thing triggering the error</li>
</ul>
</blockquote>
<p>I'm trying to say that I <em>think</em> this is not quite sufficient, because we would not expect specs and the get_lint_level to differ in the example you pasted last, right?</p>



<a name="224497863"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497863" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497863">(Jan 29 2021 at 16:34)</a>:</h4>
<p>i.e., I am worried there's a more fundamental misunderstanding of the structures involved</p>



<a name="224497932"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224497932" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224497932">(Jan 29 2021 at 16:34)</a>:</h4>
<p>which example, E0453?</p>



<a name="224498090"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498090" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498090">(Jan 29 2021 at 16:35)</a>:</h4>
<p>if so, I do expect them to differ, because <a href="http://E0453.rs">E0453.rs</a> is as follows:</p>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="cp">#![forbid(non_snake_case)]</span><span class="w"></span>

<span class="cp">#[allow(non_snake_case)]</span><span class="w"></span>
<span class="c1">//~^ ERROR allow(non_snake_case) incompatible</span>
<span class="c1">//~| ERROR allow(non_snake_case) incompatible</span>
<span class="c1">//~| ERROR allow(non_snake_case) incompatible</span>
<span class="k">fn</span> <span class="nf">main</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
</code></pre></div>



<a name="224498129"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498129" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498129">(Jan 29 2021 at 16:35)</a>:</h4>
<p>and <code>specs</code> seems to be "what is on this level"</p>



<a name="224498170"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498170" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498170">(Jan 29 2021 at 16:35)</a>:</h4>
<p>or at least, it is empty here</p>



<a name="224498182"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498182" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498182">(Jan 29 2021 at 16:35)</a>:</h4>
<p>hm, then I misunderstood specs</p>



<a name="224498193"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498193" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498193">(Jan 29 2021 at 16:35)</a>:</h4>
<p>but when I look at the case where they are on the <em>same</em> level</p>



<a name="224498211"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498211" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498211">(Jan 29 2021 at 16:35)</a>:</h4>
<p>I see entries in <code>specs</code></p>



<a name="224498232"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498232" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498232">(Jan 29 2021 at 16:35)</a>:</h4>
<p>that said, i am sort of confused because</p>



<a name="224498253"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498253" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498253">(Jan 29 2021 at 16:35)</a>:</h4>
<p>I read the old code and it se--- ah, I wonder</p>



<a name="224498267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498267">(Jan 29 2021 at 16:35)</a>:</h4>
<p>so, the old code <em>only</em> checked specs</p>



<a name="224498336"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498336" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498336">(Jan 29 2021 at 16:36)</a>:</h4>
<p>and so I <em>am</em> confused how we see errors on stable in E0453 for example</p>



<a name="224498360"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498360" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498360">(Jan 29 2021 at 16:36)</a>:</h4>
<p>i don't know what other changes you made along the way</p>



<a name="224498440"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498440" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498440">(Jan 29 2021 at 16:36)</a>:</h4>
<p>I am now wondering if on stable that code was meant to only report errors at the same level, and there was some other check across levels?</p>



<a name="224498453"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498453" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498453">(Jan 29 2021 at 16:36)</a>:</h4>
<p>I guess maybe I should go review your original PR :)</p>



<a name="224498502"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224498502" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224498502">(Jan 29 2021 at 16:37)</a>:</h4>
<p>I think there was a loop of some kind</p>



<a name="224499177"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224499177" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224499177">(Jan 29 2021 at 16:41)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups/near/224498440">said</a>:</p>
<blockquote>
<p>I am now wondering if on stable that code was meant to only report errors at the same level, and there was some other check across levels?</p>
</blockquote>
<p>I wouldnt be surprsied if this were the case, since the original problem was that we <em>only</em> had the check across levels, and a no-op for the same level. (Right?)</p>



<a name="224499648"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224499648" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224499648">(Jan 29 2021 at 16:44)</a>:</h4>
<p>yes, that was the original case, though that code was broken for lint groups</p>



<a name="224501715"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224501715" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224501715">(Jan 29 2021 at 16:58)</a>:</h4>
<p>let me try checking for groups explicitly and see how it behaves vis a vis existing tests</p>



<a name="224537259"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224537259" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224537259">(Jan 29 2021 at 21:38)</a>:</h4>
<p>I'm still tinkering here -- very slowly --</p>



<a name="224537317"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224537317" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224537317">(Jan 29 2021 at 21:39)</a>:</h4>
<p>I see now what you meant <span class="user-mention" data-user-id="116122">@simulacrum</span> that comparing for equality means that we don't address <a href="https://github.com/rust-lang/rust/issues/80988">#80988</a>, though we do address the actual cases we saw in practice I think? not sure.</p>



<a name="224537340"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224537340" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224537340">(Jan 29 2021 at 21:39)</a>:</h4>
<p>I'm trying to write something that just checks for 'is it a lint group' but for some reason it's not working</p>



<a name="224537347"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224537347" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224537347">(Jan 29 2021 at 21:39)</a>:</h4>
<p>still debugging</p>



<a name="224539479"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224539479" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224539479">(Jan 29 2021 at 21:59)</a>:</h4>
<p>this seems to work now</p>



<a name="224539501"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224539501" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224539501">(Jan 29 2021 at 21:59)</a>:</h4>
<p>the <code>WARNINGS</code> group is very special</p>



<a name="224552923"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224552923" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224552923">(Jan 30 2021 at 00:07)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> do you know if there's a test covering a scenario like this:</p>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="cp">#![forbid(unused)]</span><span class="w"></span>

<span class="cp">#[allow(warnings)]</span><span class="w"></span>
<span class="k">fn</span> <span class="nf">foo</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">}</span><span class="w"></span>
</code></pre></div>
<p>i.e., two overlapping groups?</p>
<p>Similarly, having a forbid on a specific lint and then an allow on the group later on.</p>



<a name="224553002"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224553002" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224553002">(Jan 30 2021 at 00:08)</a>:</h4>
<p>I don't think there is</p>



<a name="224553014"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224553014" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224553014">(Jan 30 2021 at 00:08)</a>:</h4>
<p>Or at least, I neither added or saw one in brief greps back then</p>



<a name="224585099"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224585099" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224585099">(Jan 30 2021 at 13:27)</a>:</h4>
<p>OK, so, I was going to open a PR but I realized that my change doesn't <em>quite</em> do what is needed here.</p>



<a name="224585104"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224585104" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224585104">(Jan 30 2021 at 13:27)</a>:</h4>
<p>In particular, this makes the <code>#[allow]</code> not an error, but it still means that any occurrence of the lint will be an error, so I expect that <a href="https://github.com/rust-lang/rust/issues/81218">#81218</a> is not fixed</p>



<a name="224585105"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224585105" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224585105">(Jan 30 2021 at 13:27)</a>:</h4>
<p>I should test that</p>



<a name="224585113"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224585113" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224585113">(Jan 30 2021 at 13:27)</a>:</h4>
<p>Probably what we want to do is -- issue a FCW for the allow but then permit it to take effect</p>



<a name="224585658"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224585658" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224585658">(Jan 30 2021 at 13:41)</a>:</h4>
<p>Actually, maybe it'd be better to respect the new setting no matter what?</p>



<a name="224585660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224585660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224585660">(Jan 30 2021 at 13:41)</a>:</h4>
<p>I am not sure what I would expect to be honest</p>



<a name="224587716"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224587716" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224587716">(Jan 30 2021 at 14:29)</a>:</h4>
<p>Hm, I think we have to make the allow take effect - otherwise it'd be just as breaking most likely</p>



<a name="224587724"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224587724" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224587724">(Jan 30 2021 at 14:29)</a>:</h4>
<p>I guess we could limit to warning, but if the allow is in a macro that doesn't do you any good.</p>



<a name="224588243"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224588243" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224588243">(Jan 30 2021 at 14:43)</a>:</h4>
<p>Yeah, that is what I'm doing, and I think it's right</p>



<a name="224588247"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224588247" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224588247">(Jan 30 2021 at 14:43)</a>:</h4>
<p>I actually think it's right all the time</p>



<a name="224588249"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/forward%20compatibility%20warning%20for%20forbid%20lints%20and%20groups/near/224588249" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/forward.20compatibility.20warning.20for.20forbid.20lints.20and.20groups.html#224588249">(Jan 30 2021 at 14:43)</a>:</h4>
<p>but at least in the FCW case</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>